package com.cloud.charts4a.chart.attrib;

/**
 * Abstract X-Axis attributes in chart<p/> 
 *
 * @param <T1>	must be Integer or Date type
 * @param <T2>	must be Integer or Date type
 * 
 * @version
 * <ol>
 * 	<li>2010/07/09 CloudTu：First Release</li>
 * </ol>
 * 
 * @author cloudtu 
 */
abstract public class AbstractXAxisAttribs<T1,T2> {
	protected T1 minXValue;			//X軸裡的起始值
	protected T2 maxXValue;			//X軸裡的結束值
	protected int xValueInterval;	//相臨二個X軸之值的間隔
	protected String xUnitDesc;		//X軸的單位說明	

	/**
	 * 取得X軸裡的起始值
	 * 
	 * @return	X軸裡的起始值
	 */
	public T1 getMinXValue() {
		return minXValue;
	}	
					
	/**
	 * 設定X軸裡的起始值
	 * 
	 * @param minXValue	X軸裡的起始值
	 */
	public void setMinXValue(T1 minXValue) {
		this.minXValue = minXValue;
	}

	/**
	 * 取得X軸裡的結束值
	 * 
	 * @return	X軸裡的結束值
	 */
	public T2 getMaxXValue() {
		return maxXValue;
	}

	/**
	 * 設定X軸裡的結束值
	 * 
	 * @param maxXValue	X軸裡的結束值
	 */
	public void setMaxXValue(T2 maxXValue) {
		this.maxXValue = maxXValue;
	}		
	
	/**
	 * 取得相臨二個X軸之值的間隔
	 * 
	 * @return	相臨二個X軸之值的間隔
	 */			
	public int getXValueInterval() {
		return xValueInterval;
	}

	/**
	 * 取得X軸的單位說明
	 * 
	 * @return X軸的單位說明
	 */
	public String getXUnitDesc() {
		return xUnitDesc;
	}	
}
